//
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU Lesser General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.
// 
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
// GNU Lesser General Public License for more details.
// 
// You should have received a copy of the GNU Lesser General Public License
// along with this program.  If not, see http://www.gnu.org/licenses/.
// 

package peermaliziosi;

simple Cloud
{
    parameters:
        @signal[totMsgOnFly](type="int");
        @statistic[totMsgOnFly](title="Number of messages on-fly"; source="totMsgOnFly"; record=vector,stats; interpolationmode=none);
        
        @signal[totByteOnFly](type="int");
        @statistic[totByteOnFly](title="Number of bytes on-fly"; source="totByteOnFly"; record=vector,stats; interpolationmode=none);
        
        @signal[totRequest](type="int");
        @statistic[totRequest](title="Numero di Request nella nuvola"; source="totRequest"; record=vector,stats; interpolationmode=none);
        
        @signal[totPiece](type="int");
        @statistic[totPiece](title="Numero di Piece nella nuvola"; source="totPiece"; record=vector,stats; interpolationmode=none);
        
        @signal[totCancel](type="int");
        @statistic[totCancel](title="Numero di Cancel nella nuvola"; source="totCancel"; record=vector,stats; interpolationmode=none);
        
        @display("i=misc/cloud");
    gates:
        // un gate per ogni peer.
        // il gate i-esimo e' collegato al peer i-esimo
        inout io[];
}
